package com.woniuxy.productservice.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.woniuxy.core.util.PageInfo;
import com.woniuxy.productdao.model.TeamReservation;
import com.woniuxy.productmodel.dto.TeamReservDto;
import com.woniuxy.productmodel.form.VenueListTeamReservForm;

import java.util.List;

/**
 * <p>
 * 团课预约表 服务类
 * </p>
 *
 * @author 冉杰
 * @since 2024-01-15
 */
public interface TeamReservationService extends IService<TeamReservation> {

    TeamReservDto addTeamReservation(Integer teamProductId, Integer userId) throws InterruptedException;

    List<TeamReservDto> userListTeamReservation(Integer userId);


    PageInfo<TeamReservDto> venueListTeamReservation(VenueListTeamReservForm form, Integer venueId);

    void userCancelTeamReservation(Integer reservationId, Integer userId);

    void venueOpenClass(Integer teamProductId, Integer venueId);

    List<TeamReservDto> byProductId(Integer teamProductId);
}
